Large-volume data may sometimes be organized in a hierarchical, multi-dimensioned format, such as a tree structure with collapsible nodes. Each element of a tree structure may be referred to as a node. Some nodes have a parent-child relationship. That is, a parent node is connected to each of its child nodes, and each child node is one step lower in the hierarchy than its parent. A child node may itself be a parent node to other children nodes. A descendent node is a node reachable by proceeding one or more times from parent to child. A group of nodes within the same parent are sibling nodes. A tree may have one root node which is at the highest level of the hierarchy.
A tree structure may be rendered, for example, by a web browser. The tree structure may have nodes that are collapsible by a user. When a node is collapsed by the user, all of the descendent nodes of the collapsed node are not displayed. A user may also expand a collapsed node, causing the children nodes of the expanded node to be displayed. The children node of the expanded node are then collapsed, but these collapsed nodes may also be expanded by the user. When multiple-dimensional data such as data in a tree structure is rendered in a browser, the rendering is typically accomplished by mapping the html structure to the data structure.